.doctor-list-page {
  min-height: 100vh;
  background-color: #f7f8fa;
  display: flex;
  flex-direction: column;

  .rv-nav-bar {
    background-color: #fff;
    border-bottom: 1px solid #eee;
  }

  .sort-tabs {
    background-color: #fff;
    border-bottom: 1px solid #eee;
    
    .rv-tab {
      flex: 1;
      min-width: 0;
      padding: 0 8px;
      font-size: 14px;
      color: #323233;
    }

    .rv-tabs__line {
      background-color: var(--rv-primary-color);
    }
  }

  .doctor-list {
    flex: 1;
    padding: 12px;

    .error-container {
      padding: 24px 0;
      text-align: center;
      cursor: pointer;

      .retry-text {
        margin-top: 12px;
        color: var(--rv-primary-color);
        font-size: 14px;
      }

      &:active {
        opacity: 0.8;
      }
    }

    .doctor-card {
      margin-bottom: 12px;
      border-radius: 8px;
      background-color: #fff;
      overflow: hidden;

      .doctor-info {
        display: flex;
        padding: 16px;
        gap: 12px;
        align-items: flex-start;

        .avatar {
          width: 60px;
          height: 80px;
          border-radius: 4px;
          flex-shrink: 0;
        }

        .info-content {
          flex: 1;
          min-width: 0;

          .name-title {
            display: flex;
            align-items: center;
            gap: 8px;
            margin-bottom: 8px;

            .name {
              font-size: 16px;
              font-weight: 500;
              color: #323233;
            }

            .title {
              font-size: 12px;
              padding: 0 6px;
              line-height: 18px;
            }
          }

          .hospital {
            font-size: 14px;
            color: #666;
            margin-bottom: 8px;
          }

          .stats {
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 12px;
            color: #969799;

            .rv-rate {
              --rv-rate-icon-full-color: #ffd21e;
            }

            .rate {
              color: #ff8917;
            }

            .separator {
              color: #eee;
            }
          }
        }

        .price {
          text-align: right;
          flex-shrink: 0;

          .amount {
            font-size: 18px;
            font-weight: 500;
            color: #ee0a24;
          }

          .unit {
            font-size: 12px;
            color: #969799;
          }
        }
      }
    }
  }

  .rv-list {
    &__loading, &__finished {
      padding: 16px 0;
      color: #969799;
      font-size: 14px;
      text-align: center;
    }
  }

  .rv-empty {
    padding: 32px 0;
    background-color: transparent;

    &__image {
      width: 160px;
      height: 160px;
    }

    &__description {
      color: #969799;
      font-size: 14px;
      line-height: 20px;
    }
  }
} 